package karaokestrong.servlets;

import java.io.IOException;
import java.sql.Timestamp;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Collection;
import java.util.Date;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import junit.framework.Assert;

import karaokestrong.excepcion.DAOExcepcion;
import karaokestrong.modelo.Evento;
import karaokestrong.modelo.Producto;
import karaokestrong.modelo.Reportes;
import karaokestrong.negocio.GestionProducto;
import karaokestrong.negocio.GestionReportes;

/**
 * Servlet implementation class ServletReportes
 */
@WebServlet("/ServletReportes")
public class ServletReportes extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public ServletReportes() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		
		
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		
		String nombres = request.getParameter("nombre");
		Timestamp fecha = Timestamp.valueOf(request.getParameter("fecha"));
	
		
		System.out.println("Dentro de Reportes Servlet: " + nombres);
		
		GestionReportes negocio = new GestionReportes();
		
		try {
			
			Collection<Reportes> listado = negocio.buscarPorFeNo(fecha, nombres);
			for (Reportes R:listado )
			{
				System.out.println("Reporte: "+R.getNombrep());
			}
			request.setAttribute("Productos Vendidos por Evento", listado);
			
			RequestDispatcher rd = request.getRequestDispatcher("formReportes.jsp");
			rd.forward(request, response);
			
			
		} catch (DAOExcepcion e) {

			Assert.fail("Fallo la Busqueda: " + e.getMessage());

		}
		
	}
	
	public Timestamp StrTime(String Texto)
	{
		System.out.println("Texto: "+Texto);
		Timestamp fromTS1 = new Timestamp(StringToDate(Texto).getTime());
		return fromTS1;
	}
	public Date StringToDate(String Texto) {
        String Formato = "yyyy/MM/dd";
        DateFormat FormatoFecha = new SimpleDateFormat(Formato);
        Date Fecha = null;
        try {
            Fecha = FormatoFecha.parse(Texto);
        } catch (ParseException ex) {
            System.out.println("Error al convertir Texto a Fecha... " + ex);
        }
        return Fecha;
    }
	}


